package com.un.ebs.sys.domain;

import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.extension.activerecord.Model;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.un.ebs.core.enums.IndustryTypeEnum;
import com.un.ebs.core.enums.UserTypeEnum;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 2
 * </p>
 *
 * @author liubo
 * @since 2019-09-29
 */
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@TableName("v_user_ext")
public class UserExt extends Model<UserExt> {

    private static final long serialVersionUID = 1L;

    private String id;

    @JsonIgnore
    private String userName;

    @JsonIgnore
    private String password;

    @JsonIgnore
    private String openId;

    private UserTypeEnum type;

    @TableField(fill = FieldFill.INSERT)
    private Date createTime;

    @TableLogic
    private Boolean isDelete;

    private String entId;

    private String entName;

    private Integer provinceId;
    private String provinceName;

    private Integer cityId;
    private String cityName;

    private Integer countyId;
    private String countyName;

    private Boolean entIsDelete;

    @JsonIgnore
    private IndustryTypeEnum industryType;

    private String deptId;

    private String deptName;

    @JsonIgnore
    private Boolean deptIsDelete;

    private String personnelId;

    private String personnelName;

    @JsonIgnore
    private Boolean personnelIsDelete;

    private String appId;

    private String appName;

    @JsonIgnore
    private String appCreateAt;

    @JsonIgnore
    private Boolean appIsDelete;

    private String tenantId;

    private String tenantName;

    @JsonIgnore
    private Date tenantStartDate;

    @JsonIgnore
    private Date tenantEndDate;

    private Boolean tenantIsDelete;

    private String tel;

    private String email;

    private String currentTenantId;

    @Override
    protected Serializable pkVal() {
        return null;
    }

}